home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / tas407.zip / BBAND.TAS < prev    next >
Text File  |  1991-08-10  |  2KB  |  50 lines

  1. { BBAND.TAS - This script computes BOLLINGER BANDS. 
  2.   Bollinger bands are lines which are 'n' standard deviations away 
  3.   from a 'p' day moving average of the close. 
  4.   To change the value of 'n', change 'bband_devs' below. To 
  5.   change the value of 'p', change 'bband_period' below.
  6. }
  7. #output_file 'bband.lst' n
  8. #max_quotes 200
  9. GRAPH_SWITCH = 1; {<--------- SET THIS TO 1 TO SEE GRAPHS}
  10. bband_period = 20;              { number of days in BBAND period }
  11. bband_devs   = 2;               { number of STD DEVIATIONS about close}
  12. bband_top : array;              { top band }
  13. bband_bot : array;              { bottom band }
  14.   Top Bollinger Band 
  15. }
  16. bband_top = bbandt(20,2);
  17.   Bottom Bollinger Band 
  18. }
  19. bband_bot = bbandb(20,2);
  20.  
  21. { Now, the rest is up to you. I have suppied a simple check to see
  22.   if the current close is over the top band or below the bottom band.
  23.   You can use these BBAND arrays to check for the narrowing of the 
  24.   bands, tops or bottoms outside the bands, and bouncing off the 
  25.   bands.
  26. }
  27.  
  28. if over(c,bband_top) >= 0 then
  29. begin
  30.   gosub dograph;
  31.   writeln(ticker,' BBAND upward breakout occurred');
  32. end;
  33. if over(bband_bot,c) >= 0 then
  34. begin
  35.   gosub dograph;
  36.   writeln(ticker,' BBAND downward breakout occurred');
  37. end;
  38. return;
  39. :dograph
  40. if graph_switch = 0 then return;
  41. opengraph(3,0,0); 
  42. sizegraph(2,1,1);       { size the graphs 50%, 25%, 25%}
  43. graph(bband_top,bband_bot,1);
  44. graph(macd(),'Macd',macdtrigger(),'Trigger');
  45. graph(cci(14),'CCI 14');
  46. closegraph();
  47. return;
  48.